﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;

namespace ImmovablesManager
{
    public class DataGridCommercialDataView : INotifyPropertyChanged
    {

        private Guid _commercialId;
        public Guid CommercialId
        {
            get { return _commercialId; }
            set
            {
                _commercialId = value;
                NotifyPropertyChanged("CommercialId");
            }
        }

        private string _commercialType;
        public string CommercialType
        {
            get { return _commercialType; }
            set
            {
                _commercialType = value;
                NotifyPropertyChanged("CommercialType");
            }
        }


        private string _commercialRegion;
        public string CommercialRegion
        {
            get { return _commercialRegion; }
            set
            {
                _commercialRegion = value;
                NotifyPropertyChanged("CommercialRegion");
            }
        }

        private string _commercialAddress;
        public string CommercialAddress
        {
            get { return _commercialAddress; }
            set
            {
                _commercialAddress = value;
                NotifyPropertyChanged("CommercialAddress");
            }
        }

        private string _commercialContractNumber;
        public string CommercialContractNumber
        {
            get { return _commercialContractNumber; }
            set
            {
                _commercialContractNumber = value;
                NotifyPropertyChanged("CommercialContractNumber");
            }
        }

        private int? _commercialFloor;
        public int? CommercialFloor
        {
            get { return _commercialFloor; }
            set
            {
                _commercialFloor = value;
                NotifyPropertyChanged("CommercialFloor");
            }
        }

        private int? _commercialFloorsCount;
        public int? CommercialFloorsCount
        {
            get { return _commercialFloorsCount; }
            set
            {
                _commercialFloorsCount = value;
                NotifyPropertyChanged("CommercialFloorsCount");
            }
        }

        private string _commercialWallsMaterial;
        public string CommercialWallsMaterial
        {
            get { return _commercialWallsMaterial; }
            set
            {
                _commercialWallsMaterial = value;
                NotifyPropertyChanged("CommercialWallsMaterial");
            }
        }

        private double? _totalArea;
        public double? TotalArea
        {
            get { return _totalArea; }
            set
            {
                _totalArea = value;
                NotifyPropertyChanged("TotalArea");
            }
        }

        private string _generalInformation;
        public string GeneralInformation
        {
            get { return _generalInformation; }
            set
            {
                _generalInformation = value;
                NotifyPropertyChanged("GeneralInformation");
            }
        }

        private double? _totalCost;
        public double? TotalCost
        {
            get { return _totalCost; }
            set
            {
                _totalCost = value;
                NotifyPropertyChanged("TotalCost");
            }
        }

        private string _realtorPhone;
        public string RealtorPhone
        {
            get { return _realtorPhone; }
            set
            {
                _realtorPhone = value;
                NotifyPropertyChanged("RealtorPhone");
            }
        }

        private int? _cardNumber;
        public int? CardNumber
        {
            get { return _cardNumber; }
            set
            {
                _cardNumber = value;
                NotifyPropertyChanged("CardNumber");
            }
        }

        private string _ownerPhone;
        public string OwnerPhone
        {
            get { return _ownerPhone; }
            set
            {
                _ownerPhone = value;
                NotifyPropertyChanged("OwnerPhone");
            }
        }

        private void NotifyPropertyChanged(String info)
        {
            if (PropertyChanged != null)
            {
                PropertyChanged(this, new PropertyChangedEventArgs(info));
            }
        }

        #region Implementation of INotifyPropertyChanged

        public event PropertyChangedEventHandler PropertyChanged;

        #endregion
    }
}
